package com.ljh.mybatisplusdemo.config;

import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.ControllerAdvice;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * @author: Themberfue
 * @date: 2025/3/24 13:39
 * @description:
 */
@Slf4j
@ControllerAdvice
@ResponseBody
//@RestControllerAdvice
public class ExceptionAdvice {
//    @ExceptionHandler
//    public String handler(Exception e) {
//        log.error("发生异常", e);
//        return "handler:发生异常";
//    }
//
//    @ExceptionHandler
//    public String handler(NullPointerException e) {
//        log.error("发生空指针异常", e);
//        return "handler:发生空指针异常";
//    }
//
//    @ExceptionHandler
//    public String handler(ArrayIndexOutOfBoundsException e) {
//        log.error("发生数组下标越界异常", e);
//        return "handler:发生数组下标越界异常";
//    }

    @ExceptionHandler(Exception.class)
    public String handler1(Exception e) {
        log.error("发生异常", e);
        return "handler:发生异常";
    }

    @ExceptionHandler(NullPointerException.class)
    public String handler2(Exception e) {
        log.error("发生空指针异常", e);
        return "handler:发生空指针异常";
    }

    @ExceptionHandler(ArrayIndexOutOfBoundsException.class)
    public String handler3(Exception e) {
        log.error("发生数组下标越界异常", e);
        return "handler:发生数组下标越界异常";
    }
}
